1. Field of the Invention
The present invention relates to a vehicle control apparatus and method for controlling a plurality of control objects provided in a vehicle.
2. Related Art
A conventional vehicle control apparatus which controls a plurality of control objects, such as a vehicle engine, a vehicle transmission and the like, has a plurality of electronic control units (ECUs) which control the corresponding control objects based on control programs for the control objects, respectively. The control units share control data to improve control performance.
For instance, a transmission control unit uses to control the transmission a data of engine rotation speed NE calculated in an engine control unit based on the signal of a rotation sensor, or oppositely the engine control unit uses to control the engine a data of a vehicle speed SPD calculated in the transmission control unit based on the rotation speed of a drive shaft or the like.
A variety of system configurations of such a vehicle control apparatus are proposed as shown in FIGS. 10A to 10C. The engine control unit and the transmission control unit are provided and both of the control units share the data of the engine rotation speed NE and the vehicle speed SPD.
In one system, as shown in FIG. 10A, both of an engine control unit A1 and a transmission control unit A2 are integrated into a single microcomputer (CPU) 1 provided in a single electronic control unit (ECU) 50. That is, in the system using the single CPU 1 in the single ECU 50 shown in FIG. 10A, the single CPU 1 provided in the single ECU 50 operates as both of the engine control unit A1 and the transmission control unit A2 by executing both control programs for an engine control and a transmission control.
In this system using the single CPU 1 in the single ECU 50, the engine control unit A1 and the transmission control unit A2 shares the data of the engine rotation speed NE and the vehicle speed SPD through a RAM normally provided in the CPU 1 for storing control data.
More specifically, the engine control unit A1 (that is, when the CPU 1 operates as the engine control unit A1) reads out from a predetermined storage location in the RAM the data of the vehicle speed SPD which has been written by the transmission control unit A2 (that is, written when the CPU 1 operated as the transmission control unit A2). Further, the transmission control unit A2 (that is, when the CPU 1 operates as the transmission control unit A2) reads out from another predetermined storage location in the RAM the data of the engine rotation speed NE which has been written by the engine control unit A1 (that is, written when the CPU 1 operated as the engine control unit A1).
In another system, as shown in FIG. 10B, two CPUs 1 and 2 are provided in a single ECU 60 to realize recently required complicated controls. The engine control unit A1 is integrated in the CPU 1, and the transmission control unit A2 is integrated in the CPU 2. That is, in the system using two CPUs 1 and 2 in the single ECU 60, one CPU 1 operates as the engine control unit A1 by executing the control program for the engine control, and the other CPU 2 operates as the transmission control unit A2 by executing the control program for the transmission control.
In this system of two CPUs 1 and 2 in the single ECU 60, an inter-CPU communication control unit B1 is integrated in the CPU 1 of the engine control unit A1 to transmit the data of the engine rotation speed NE to the CPU 2 of the transmission control unit A2 and to receive the data of the vehicle speed SPD transmitted from the CPU 2. Further, an inter-CPU communication control unit B2 is integrated in the CPU 2 to transmit the data of the vehicle speed SPD to the CPU 1 and to receive the data of the engine rotation speed NE transmitted from the CPU 1.
Furthermore, the engine control unit A1 realized by the CPU 1 reads out for data sharing the data of the vehicle speed SPD transmitted from the CPU 2 and stored in the inter-CPU communication control unit B1 of its own side (specifically, in data-receiving registers or the like which constitutes the inter-CPU communication control unit B1). The transmission control unit A2 realized by the CPU 2 reads out for data sharing the data of the engine rotation speed NE transmitted from the CPU 1 and stored in the inter-CPU communication control unit B2 of its own side (specifically, in data-receiving registers or the like which constitutes the inter-CPU communication control unit B2).
In a further system, as shown in FIG. 10C, the CPU 1 integrated with the engine control unit A1 (for operating as the engine control unit A1) and the CPU 2 integrated with the transmission control unit A2 (for operating as the transmission control unit A2) are provided in two ECUs 70 and 80, respectively. In this dual ECU system configuration, the two ECUs 70 and 80 are connected through a local area network (LAN) provided in the vehicle.
In this dual ECU system, a LAN communication control unit C1 is integrated in the CPU 1 in the ECU 70 constituting the engine control unit A1 to transmit the data of the engine rotation speed NE to the LAN and receive the data of the vehicle speed SPD transmitted from the ECU 80. A LAN communication control unit C2 is integrated in the CPU 2 in the ECU 80 constituting the transmission control unit A2 to transmit the data of the vehicle speed SPD to the LAN and receive the data of the engine rotation speed NE transmitted from the ECU 70.
Furthermore, in this dual ECU system configuration, the engine control unit A1 realized by the CPU 1 reads out for data sharing the data of the vehicle speed SPD transmitted from the ECU 80 and stored in the LAN communication control unit C1 of its own side (specifically, in a data-receiving register or the like constituting the LAN communication control unit C1). The transmission control unit A2 realized by the CPU 2 reads out for data sharing the data of the engine rotation speed NE transmitted from the ECU 70 and stored in the LAN communication control unit C2 of its own side (specifically, in a data-receiving register or the like constituting the LAN communication control unit C2).
As shown in FIGS. 10A to 10C, the vehicle control apparatus of this kind may be configured differently depending on types of vehicles even if the same engine control and transmission control are to be performed. The storage locations of control data to be shared by the control units (shared data) differ depending on the system configurations.
Here, difference in the storage locations of the shared data means that the addresses to be accessed for one control unit to share the control data with another control unit becomes different. As a result, the control programs for the control units must be provided separately for each system configuration. That is, the control program for each control unit has to be changed, because the accessed addresses and access processes for sharing the shared data differ, even if the control logic is not changed. The shared data are not only the engine rotation speed NE and the vehicle speed SPD but also many others such as data of other sensor information or data indicative of gear change condition of the transmission. As a result, the changes to the control programs increase greatly.